﻿// CCbSocket.cpp: 实现文件
//

#include "stdafx.h"
#include "DC-QC.h"
#include "CCbSocket.h"
#include "Global.h"

// CCbSocket
#define MAXCHARS 2048
CCbSocket::CCbSocket(CMainFrame* pParent)
{
	m_pParent = pParent;
}

CCbSocket::~CCbSocket()
{
}
// CCbSocket 成员函数
void CCbSocket::OnReceive(int nErrorCode)
{
	// TODO: 在此添加专用代码和/或调用基类
	gl.m_bConnChrom = TRUE;
	char	lpBuf[MAXCHARS + 1];
	int		nBufLen=1;
	//2022-7-6增加如下代码的处理，增加了WHILE 和 AsyncSelect(FD_READ);
	//为了读尽缓冲区中的数据；
	memset(lpBuf, 0, sizeof(lpBuf));
	::EnterCriticalSection(&m_cSend);
	nBufLen = Receive(lpBuf, MAXCHARS);
	::LeaveCriticalSection(&m_cSend);
	cControl.ProcessNetGatherCardData(lpBuf, nBufLen);

	AsyncSelect(FD_READ);
	CSocket::OnReceive(nErrorCode);
}

/////////////////////////////////////////////////
CCbSocket*  socketCb=NULL;